public UserFilterCommand(
int filterWidth,
int filterHeight,
LeadPoint centerPoint,
int divisor,
int offset,
UserFilterCommandType type,
int[] matrix
)
Public Function New( _
ByVal filterWidth As Integer, _
ByVal filterHeight As Integer, _
ByVal centerPoint As LeadPoint, _
ByVal divisor As Integer, _
ByVal offset As Integer, _
ByVal type As UserFilterCommandType, _
ByVal matrix() As Integer _
)
- (instancetype)initWithFilterWidth:(NSUInteger)filterWidth
filterHeight:(NSUInteger)filterHeight
centerPoint:(LeadPoint)centerPoint
divisor:(NSUInteger)divisor
offset:(NSInteger)offset
type:(LTUserFilterCommandType)type
matrix:(nullable const int *)matrix
matrixLength:(NSUInteger)matrixLength
public UserFilterCommand(
int filterWidth,
int filterHeight,
LeadPoint centerPoint,
int divisor,
int offset,
UserFilterCommandType type,
int[] matrix
)
public:
UserFilterCommand(
int filterWidth,
int filterHeight,
LeadPoint centerPoint,
int divisor,
int offset,
UserFilterCommandType type,
array<int>^ matrix
)
filterWidth
Number of columns in the user-defined array (mask). This parameter only accepts positive values.
filterHeight
Number of rows in the user-defined array (mask). This parameter only accepts positive values.
centerPoint
Any two-dimensional position of the matrix array, to be used as the matrix (mask)center.
divisor
Value used to divide the final result of the output. This must be a non-zero value. If you want to use floating point values for the matrix elements and the divisor, multiply the matrix elements and the divisor with the same value (for example, 10, 100, 1000). This parameter only accepts positive values.
offset
Value used to offset the final result of the output.
type
Flag that indicates the type of operation.
matrix
Array of (filterWidth * filterHeight) integers containing the user-defined matrix (mask). The elements are stored in row order (first row, second row, etc).
Run the UserFilterCommand on an image, In this example the high pass.filter will be applied using user defined matrix.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Effects;
public void UserFilterConstructorExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1.CMP"));
// Prepare the command
int[] matrix = new int[9];
// Initialize the array with factor used to apply the high pass filter.
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
if (j == 1 || i == 1)
{
if (j == 1 && i == 1)
matrix[i * 3 + j] = 5;
else
matrix[i * 3 + j] = -1;
}
else
matrix[i * 3 + j] = 0;
}
}
UserFilterCommand command = new UserFilterCommand(3, 3, new LeadPoint(1, 1), 1, 0, UserFilterCommandType.Sum, matrix);
// Apply the high pass custom filter.
command.Run(image);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS21\Resources\Images";
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Effects
Public Sub UserFilterConstructorExample()
Dim codecs As New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1.CMP"))
' Prepare the command
Dim i As Integer
Dim j As Integer
Dim matrix() As Integer
ReDim matrix(8)
' Initialize the array with factor used to apply the high pass filter.
For i = 0 To 2
For j = 0 To 2
If (j = 1 Or i = 1) Then
If (j = 1 And i = 1) Then
matrix(i * 3 + j) = 5
Else
matrix(i * 3 + j) = -1
End If
Else
matrix(i * 3 + j) = 0
End If
Next
Next
Dim command As UserFilterCommand = New UserFilterCommand(3, 3, New LeadPoint(1, 1), 1, 0, UserFilterCommandType.Sum, matrix)
' Apply the high pass custom filter.
command.Run(leadImage)
codecs.Save(leadImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24)
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\LEADTOOLS21\Resources\Images"
End Class
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.